#!/usr/bin/python
# -*- coding: utf-8 -*-

from lib.util import *
from lib.dao import *
import os,shutil


def saveDb(word_pair):
    en,zh=word_pair
    obj={
         'txt_en':en,
         'txt_zh':zh.decode("gbk"),#sqlite中只能保存 Unicode 字符串,
         }

    dao=WordsDao()
    #如果数据库中已经存在则更新\
    row=dao.selectByEnglish(en)
    if row:
        print 'update > ',en
        dao.update(row["id"],obj)
    #否则插入数据
    else:
        print 'insert > ',en
        dao.insert(obj)
  
if __name__=='__main__':
        
    File(r"data\KidEnglish").mkdir()
    File(r"data\KidEnglish\data").mkdir()
    File(r"data\KidEnglish\data\picture").mkdir()
    File(r"data\KidEnglish\data\tts").mkdir()
    
    f=open("words.txt","r")
    lines=f.readlines()
    for line in lines:
        word_pair=line.split()
        saveDb(word_pair)
        
        en,zh=word_pair
        #先将标准图片从临时下载目录中考出来
        src=r"data/temp/"+en+"/"+en+".jpg"
        des=r"data/picture/"+en+".jpg"
        if not File(des).exists():
            shutil.copyfile(src,des)
        
        
        #将标准图片缩小，拷贝到 Android 目录中去
        src=r"data/picture/"+en+".jpg"
        des=r"data/KidEnglish/data/picture/"+en+".jpg"
        
        FileIO.read(src)
        data=ImageFile.thumbnail(FileIO.read(src))
        FileIO.write(des,data)
        #将音频文件拷贝到 Android 需要的目录中去
        
        src=r"data/tts/"+en+"_en.mp3"
        des=r"data/KidEnglish/data/tts/"+en+"_en.mp3"
        shutil.copyfile(src,des)
        
        src=r"data/tts/"+en+"_zh.mp3"
        des=r"data/KidEnglish/data/tts/"+en+"_zh.mp3"
        shutil.copyfile(src,des)
        
    #最后将数据库文件拷贝到 Android 需要的目录中去
    shutil.copyfile("english.db","data/KidEnglish/english.db")
    